package com.area.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;

import java.io.Serializable;
import java.util.List;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 分类管理
 * </p>
 *
 * @author guanfenga@yonyou.com
 * @since 2023-01-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("mall_producttype")
public class Producttype implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 商品分类ID
     */
    @TableField("productTypeId")
    private Integer productTypeId;

    /**
     * 分类名称
     */
    @TableField("sortName")
    private String sortName;

    /**
     * 排序
     */
    @TableField("sortCode")
    private Integer sortCode;

    /**
     * 商品分类父ID
     */
    @TableField("parentId")
    private Integer parentId;

    /**
     * 0：不显示;1：显示
     */
    @TableField("isShow")
    private Integer isShow;

    /**
     * 是否推荐
     */
    @TableField("isRecommend")
    private Integer isRecommend;

    /**
     * 分类图片
     */
    @TableField("categoryImage")
    private String categoryImage;

    /**
     * 分类描述
     */
    @TableField("categoryDescription")
    private String categoryDescription;

    /**
     * 加载类型
     */
    @TableField("loadType")
    private String loadType;

    /**
     * 分类级别
     */
    private Integer level;

    /**
     * 行业专用 0.否 1.是
     */
    @TableField("industrySpecific")
    private Integer industrySpecific;

    /**
     * 品目id
     */
    @TableField("itemId")
    private Integer itemId;

    /**
     * 同质比价规则 0 同品牌同型号 1同品牌同属性
     */
    @TableField("sameRule")
    private Integer sameRule;

    /**
     * 是否定点(设置在二级分类上)
     */
    @TableField("isDesignated")
    private Integer isDesignated;

    /**
     * 定点结束日期
     */
    @TableField("designatedET")
    private Date designatedET;

    /**
     * 直购竞价标识 1直购 2竞价 3均可
     */
    @TableField("buyType")
    private Integer buyType;

    /**
     * 竞价品目是否可以定义品牌和型号，0不可以 1可以
     */
    @TableField("competebmFlag")
    private Integer competebmFlag;

    /**
     * 竞价项目是否可以在需求填写时选择供应商 0不可以 1可以
     */
    private Integer cansd;

    /**
     * 竞价分类合包互斥分类（设置在二级分类上）
     */
    @TableField("cannotPack")
    private String cannotPack;

    /**
     * 区域权限，号间隔
     */
    @TableField("userAreaStateParam")
    private String userAreaStateParam;
    /**
     * 用于递归进行使用
     */
    private List<Producttype> children;

    /**
     * 用于前端使用
     */
    private String value;

    private String title;

    private Integer key;

    private String label;


}
